﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;

/// <summary>
/// Summary description for PuestoBLL
/// </summary>
public class PuestoBLL
{
	public PuestoBLL()
	{
		//
		// TODO: Add constructor logic here
		//
	}

    public static Puesto rowToDto(dsPuesto.PuestoDSRow PuestoRow)
    {

        Puesto objPuesto = new Puesto();
        objPuesto.IPuesto_id = PuestoRow.iPuesto_id;
        objPuesto.SNombre_Puesto = PuestoRow.sNombre_Puesto;



        return objPuesto;
    }
    public static List<Puesto> GetAll()
    {
        List<Puesto> ListaDePuesto = new List<Puesto>();
        try
        {



            dsPuestoTableAdapters.PuestoDSTableAdapter PuestoAdapter
                = new dsPuestoTableAdapters.PuestoDSTableAdapter();
            dsPuesto.PuestoDSDataTable PuestoDataTable = PuestoAdapter.GetAll_Puesto();

            foreach (dsPuesto.PuestoDSRow row in PuestoDataTable)
            {
                Puesto objPuesto = rowToDto(row);
                ListaDePuesto.Add(objPuesto);
            }
        }
        catch (Exception ex)
        {

            //Manejar Excepcion
        }
        return ListaDePuesto;
    }
    public static Puesto GetByPK(int pk)
    {

        try
        {

            dsPuestoTableAdapters.PuestoDSTableAdapter PuestoAdapter
                = new dsPuestoTableAdapters.PuestoDSTableAdapter();
            dsPuesto.PuestoDSDataTable PuestoDataTable
                = PuestoAdapter.GetByPk_Puesto(pk);

            Puesto objPuesto = rowToDto(PuestoDataTable[0]);
            return objPuesto;
        }
        catch (Exception ex)
        {

            //Manejar Excepcion
        }
        return null;
    }

    public static int InsertarPuesto(string sNombre_Puesto)
    {

        try
        {

            dsPuestoTableAdapters.PuestoDSTableAdapter PuestoAdapter
                = new dsPuestoTableAdapters.PuestoDSTableAdapter();


            int? nuevaPK = 0;

            PuestoAdapter.Insertar_Puesto(sNombre_Puesto, ref nuevaPK);

            return (int)nuevaPK;
        }
        catch (Exception ex)
        {

            //Manejar Excepcion
        }
        return 0;
    }

    public static bool ModificarPuesto(int pk, string sNombre_Puesto)
    {

        try
        {

            dsPuestoTableAdapters.PuestoDSTableAdapter PuestoAdapter
                = new dsPuestoTableAdapters.PuestoDSTableAdapter();

            PuestoAdapter.Modificar_Puesto(pk, sNombre_Puesto);


            return true;
        }
        catch (Exception ex)
        {

            //Manejar Excepcion
        }
        return false;
    }

    public static bool EliminarPuesto(int pk)
    {

        try
        {

            dsPuestoTableAdapters.PuestoDSTableAdapter PuestoAdapter
                = new dsPuestoTableAdapters.PuestoDSTableAdapter();

            PuestoAdapter.Eliminar_Puesto(pk);


            return true;
        }
        catch (Exception ex)
        {

            //Manejar Excepcion
        }
        return false;
    }
}